using System;
using System.Collections.Generic;

namespace Kefir.Model.Basic
{
	public interface IBasicDataAbstractionLayer<T> where T : Content
	{
		void AddContent(T content);
		IEnumerable<T> GetContentSet(Func<T,bool> condition = null);
		void DeleteContent(T content);

        void AddArticle(Article article);
        IEnumerable<Article>GetArticles(Func<Article,bool> condition = null);
        void DeleteArticle(Article article);

        void UpdateContent(T content);
        void UpdateArticle(Article article);

        int SaveChanges();
	}
}

